package com.yunxi.sto.service;

import com.github.pagehelper.PageInfo;
import com.yunxi.sto.pojo.*;
import java.lang.reflect.InvocationTargetException;
import java.util.List;

/**
 * <p>
 * 车辆下线数据 服务类
 * </p>
 *
 * @author caoYong
 * @since 2019-05-21
 */
public interface VehicleOfflineDubboService {

    VehicleOfflineVO getById(String id) throws InvocationTargetException, IllegalAccessException;

    VehicleOfflineVO getDetailById(String id);

    void saveOrUpdate(VehicleOfflineVO vehicleOfflineVO) throws InvocationTargetException, IllegalAccessException;

    void removeById(String id);

    PageInfo<VehicleOfflineQueryVO> findPageByVO(VehicleOfflineQueryVO vehicleOfflineQueryVO, Integer pageNum, Integer pageSize) throws InvocationTargetException, IllegalAccessException;

    List listByVo(VehicleOfflineQueryVO v);

    VehicleOfflineVO getOne(Object wrapper);

    void updateByVin(VehicleOfflineVO voo);

    List<String> getVinList(String vin);

    boolean setVehicleShareByVin(VehicleOfflineSetShareReqVO vo);

    PageInfo<VehicleOfflineShareRespVO> queryShareVehicle(VehicleOfflineShareReqVO vo,int pageNum,int pageSize);

    void vehiclePurpose(VehicleOfflinePurposeVO vehicleOfflinePurposeVO)throws Exception;

    VehicleOfflineVO getVoByVin(String vin);
}
